home *** CD-ROM | disk | FTP | other *** search
/ Night Owl 6 / Night Owl's Shareware - PDSI-006 - Night Owl Corp (1990).iso / 034a / dfqbx10.zip / DFRAMEX.DOC next >
Text File  |  1991-10-22  |  56KB  |  1,090 lines

  1.  
  2.  
  3.  
  4.  
  5.  
  6.  
  7.  
  8.  
  9.  
  10.  
  11.  
  12.  
  13.  
  14.  
  15.  
  16.                                D O O R F R A M E
  17.                                   Version 1.0
  18.  
  19.                         A BBS Doors Development Library
  20.                           for the BASCOM 7.x compiler
  21.  
  22.                              Copyright (c) 1990-91
  23.                                 by Ted Freeman
  24.                              All rights reserved.
  25.  
  26.  
  27.                                Support board is:
  28.  
  29.                                MicroNet PCBoard
  30.                       Node1: 405-528-3175 1200-14.4K    
  31.                       Node2: 405-528-8610 1200/2400  ULTRA
  32.  
  33.  
  34.  
  35. DOORFRAME v1.0 - Users Guide - Page i
  36.  
  37.  
  38.                                 C O N T E N T S
  39.                                =================
  40.  
  41.         Warranty ............................................ ii
  42.         Copyright notice .................................... ii
  43.         Distribution ........................................ ii
  44.         Description ......................................... ii
  45.         BOX ................................................. 1
  46.         CLRSCRN ............................................. 1
  47.         DE.LAY .............................................. 2
  48.         DETECT.ANSI ......................................... 2
  49.         DIS.PLAY ............................................ 3
  50.         ENTER ............................................... 4
  51.         EXIT.DOOR ........................................... 4
  52.         IN.PUT .............................................. 4
  53.         INITIALIZE .......................................... 5
  54.         LINES ............................................... 5
  55.         MAKE.BLT ............................................ 5
  56.         MAKE.BLT.CURRENT .................................... 6
  57.         MORE ................................................ 6
  58.         MUSIC ............................................... 6
  59.         OUT.PUT ............................................. 6
  60.         SEND ................................................ 6
  61.         SHOW.BLT ............................................ 6
  62.         COLOR TABLE ......................................... 7
  63.         CONFIGURATION FILE FORMAT ........................... 8
  64.         PCBOARD.SYS VARIABLES ............................... 9
  65.         USERS.SYS VARIABLES ................................. 11
  66.         DOOR.SYS VARIABLES .................................. 12
  67.         USERINFO.DAT VARIABLES .............................. 14
  68.         DORINFOx.DEF VARIABLES .............................. 14
  69.         CALLINFO.BBS VARIABLES .............................. 15
  70.         SFDOORS.DAT VARIABLES ............................... 17
  71.         CHAIN.TXT VARIABLES ................................. 19
  72.         MISCELLANEOUS NOTES ................................. 20
  73.  
  74.  
  75. DOORFRAME v1.0 - Users Guide - Page ii
  76.  
  77.  
  78.                                    Warranty
  79.  
  80.     This product is provided "as is" without warranty of any kind. The entire
  81.     risk as to the results and  performance of the program is assumed by you.
  82.     Futhermore, the  author does  not warrant, guarantee, or  make any  other
  83.     representations regarding  the use of,  or the  results of the use of the
  84.     program,  and you  rely on the  program and  results  solely at  your own
  85.     risk.  The author  cannot and  will not accept  responsibility for system
  86.     damage, loss of profit, or any other special, consequential or incidental 
  87.     damages  resulting  from  the  use  or  inability  to  use this  product.
  88.  
  89.                                    Copyright
  90.  
  91.     DOORFRAME Copyright (c) 1990-91 by  Ted Freeman  is being distributed as
  92.     Shareware. Under this concept you may use the  SHAREWARE  (unregistered)
  93.     version for a reasonable period of  time for evaluation  after which you
  94.     must either register your copy or discontinue  usage.
  95.  
  96.  
  97.                                  Distribution
  98.  
  99.     You  are encouraged to distribute DOORFRAME provided that all files
  100.     contained in the archive are distributed in their original and
  101.     unmodified state.
  102.  
  103.                                   Description
  104.  
  105.     
  106.     DOORFRAME is a subroutine library for developing online BBS Doors for
  107.     systems that are compatible with PCBOARD.SYS, USERS.SYS, DOOR.SYS,
  108.     CALLINFO.BBS, USERINFO.DAT, SFDOORS.DAT, CHAIN.TXT, or DORINFOx.DEF for
  109.     interfacing to the BBS.
  110.     This version of DoorFrame was written for BASCOM (tm) 7.x and is not
  111.     recommended for use with earlier versions of the compiler. DoorFrame also
  112.     utilizes some of the routines contained in Tom Hanlin's PBClone library.
  113.     The COM routines are handled by the QBSerial I/O library.
  114.     NOTE: A version of DoorFrame is also available for Quickbasic 4.x.
  115.  
  116.  
  117. DOORFRAME v1.0 - Users Guide - Page 1
  118.  
  119.  
  120.                               DOORFRAME ROUTINES
  121.                              ====================
  122.  
  123. ------------------------------------------------------------------------------
  124. NOTE: 
  125. Since the subroutines are DECLAREd in DFRAMEX.INC (you DID $INCLUDE: it didn't 
  126. you?) you should not use the CALL statement. Type the name of the subroutine 
  127. and list it's parameters (if any) without the enclosing parentheses.
  128. For example:
  129.  
  130.  DIS.PLAY MSG$, FG%, BG%, BLINK%, BELL%, XPOS%, YPOS%, NL%, CENTER%, CAPS% 
  131.  
  132. ------------------------------------------------------------------------------
  133.  
  134. SUBROUTINE: 
  135. BOX.IT SROW%,SCOL%,EROW%,ECOL%,BTYPE%,BFG%,BBG%,FFG%,FBG%,FCHAR%,SHADOW%,TITLE$
  136. PARAMETERS: SROW%    - ROW the box is to start at. Valid numbers are 1 - 22.
  137.                        Accepts an INTEGER number or variable.
  138.             SCOL%    - COLUMN the box is to start at. Valid numbers are 1 - 79.
  139.                        Accepts an INTEGER number or variable.
  140.             EROW%    - ROW the box is to end at. Valid numbers are 2 - 23.
  141.                        Accepts an INTEGER number or variable.
  142.             ECOL%    - COLUMN the box is to end at. Valid numbers are 2 - 80.
  143.                        Accepts an INTEGER number or variable.
  144.             BTYPE%   - Type of border. Accepts an INTEGER number or variable.
  145.                          0 = No border (spaces all the way around).
  146.                          1 = Single line all the way around.
  147.                          2 = Double line all the way around.
  148.                          3 = Double line on sides, single on top and bottom.
  149.                          4 = Single line on sides, double on top and bottom.
  150.             BFG%     - Foreground color of the border. (See color table)
  151.                        Accepts an INTEGER number or variable.
  152.             BBG%     - Background color of the border. (See color table)
  153.                        Accepts an INTEGER number or variable.
  154.             FFG%     - Foreground color of the box fill characters.
  155.                        Accepts an INTEGER number or variable.
  156.             FBG%     - Background color of the box fill characters.
  157.                        Accepts an INTEGER number or variable.
  158.             FCHAR%   - ASCII number of the character to fill box with.
  159.                        EX: 32 = SPACE, 65 = A, 206 = ╬
  160.             SHADOW%  - 1 = Shadow, 0 = no Shadow. This will put a Shadow
  161.                        on the right and bottom edges of the box.
  162.             TITLE$   - Displays a title centered on the top border.
  163.                        Accepts a STRING variable or QUOTED TEXT.
  164.  
  165. DESCRIPTION: Draws a BOX with various style borders. The inside of the
  166.              BOX may be filled with any ASCII character you choose. The
  167.              upper left corner of the screen is ROW 1, COLUMN 1 and the
  168.              bottom right is ROW 23, COLUMN 80.
  169.  
  170.  
  171. SUBROUTINE: CLRSCRN
  172. PARAMETERS: None
  173. DESCRIPTION: Clears both the LOCAL (if ON) and REMOTE displays. This is the
  174.              only way you should do a clear screen.
  175.  
  176.  
  177.  
  178. DOORFRAME v1.0 - Users Guide - Page 2
  179.  
  180.  
  181.  
  182. SUBROUTINE: DE.LAY SEC%
  183. PARAMETERS: SEC%, 1, 2, Etc.
  184. DESCRIPTION: Pauses your program for the number of seconds in SEC%. Accepts
  185.              INTEGER number or variable.
  186.  
  187. SUBROUTINE: DETECT.ANSI
  188. PARAMETERS: None
  189. DESCRIPTION: This routine will determine if the remote system has ANSI
  190.              capability. If the remote system is ANSI compatible, the
  191.              GRAPHICS% variable will be set equal to -1 otherwise it is
  192.              set to 0. This routine does not control whether COLOR is used
  193.              or not, see the MODE% variable for that.
  194.  
  195.  
  196.  
  197. DOORFRAME v1.0 - Users Guide - Page 3
  198.  
  199. SUBROUTINE: DIS.PLAY MSG$,FG%,BG%,BLINK%,BELL%,XPOS%,YPOS%,NL%,CENTER%,CAPS%
  200. PARAMETERS: MSG$     - Text to be printed in either variable or quoted form.
  201.                        Example: "Print this" or MSG$ = "Print this".
  202.  
  203.             FG%      - Foreground color (0 - 15) Of the text. Can be in
  204.                        INTEGER number or INTEGER variable form. 
  205.                        Example: FG% = 1, 1, BLUE (See Color Table)
  206.  
  207.             BG%      - Background color (0 - 7) of text otherwise same as FG%
  208.  
  209.             BLINK%   - Enter 1 for blinking text or 0 for normal text.
  210.                        Accepts INTEGER number or INTEGER variable.
  211.  
  212.             BELL%    - Enter 1 to sound a beep on the remote or 0 for no
  213.                        beep. Does not beep on the local computer.
  214.                        Accepts INTEGER number or INTEGER variable.
  215.  
  216.             XPOS%    - Row number for cursor positioning. Valid numbers
  217.                        are 0 - 23 (status line is on 24 - 25). Enter 0 to
  218.                        disable. Accepts INTEGER number or variable.
  219.                        NOTE: XPOS% is ignored when GRAPHICS% = 0.
  220.  
  221.             YPOS%    - Column number for cursor positioning. Valid numbers
  222.                        are 0 - 80. Enter 0 to disable. Accepts INTEGER number
  223.                        or INTEGER variable.
  224.                        NOTE: YPOS% is ignored when GRAPHICS% = 0.
  225.  
  226.             NL%      - Enter 1 to send a CR/LF at the end of the line. Enter
  227.                        0 to position the cursor after the last character.
  228.                        Accepts INTEGER number or INTEGER variable.
  229.  
  230.             CENTER%  - Enter 1 to center the line or 0 for no centering.
  231.  
  232.             CAPS%    - Enter 1 to convert text to all uppercase.
  233.                        Enter -1 to convert text to all lowercase.
  234.                        Enter 0 for no case conversion.
  235.                        Accepts INTEGER number or INTEGER variable.
  236.  
  237. DESCRIPTION: Displays text to both the Local (if on) and Remote screens.
  238.              Accepts the full ASCII charcter set (0 - 255). Supports ANSI
  239.              color and cursor positioning (XPOS%, YPOS%). DoorFrame features
  240.              auto-ANSI detection and will display in graphics mode if it
  241.              senses ANSI capability on the remote end.
  242.  
  243. ENHANCEMENTS: There are some special symbols available to make text blink
  244.              in the middle of a line in any color you wish. For example:
  245.  
  246.              DIS.PLAY "This will {Blink Yellow{", LWHITE, BLACK, 1, 0,......
  247.  
  248.              Note the {'s before and after Blink Yellow. They tell the routine
  249.              to display the text in between in yellow and blinks because 
  250.              BLINK% = 1. If BLINK% = 0 then the text is displayed in yellow
  251.              but does not blink. The rest of the line is displayed in white
  252.              on black. The symbols and their corresponding colors are:
  253.                 ~ = Blue,  ` = Green,  @ = Cyan,  ^ = Red,  | = Magenta
  254.                 { = Yellow and } = White.
  255.              Put a * in front of the first symbol to display in low intensity
  256.              colors. Ex: *}text} displays 'text' in low intensity white.
  257.              Please note that you must have called DETECT.ANSI before using
  258.              these symbols and you may use only one set per DIS.PLAY. See the
  259.              included DISPLAY.BAS file for examples on using this option.
  260.  
  261.  
  262. DOORFRAME v1.0 - Users Guide - Page 4
  263.  
  264. SUBROUTINE: ENTER
  265. PARAMETERS: None
  266. DESCRIPTION: Outputs a "Press <ENTER> to Continue" prompt and waits for the
  267.              response. If the caller is in graphics mode, this is centered
  268.              on line 23. In non-graphics mode it is centered 2 lines below
  269.              the last line printed.
  270.  
  271.  
  272. SUBROUTINE: EXIT.DOOR YN$
  273. PARAMETERS: YN$, "Y", "N", "G"
  274. DESCRIPTION: VERY IMPORTANT! Always call this subroutine as the last thing
  275.              your program does. EXIT.DOOR updates the system files with any
  276.              changes that have been made to system variables, closes the
  277.              files, etc. When your Door closes, DoorFrame displays:
  278.  
  279.                         Thank you for using (Door Name)
  280.  
  281.                      Please wait while (BBS NAME) reloads.
  282.  
  283.              You can toggle this ON, "Y" or OFF, "N" when you call EXIT.DOOR.
  284.              Accepts a STRING variable YN$ = "Y" or quoted text "Y".
  285.              If you wish to allow the caller to log off from your Door, call
  286.              EXIT.DOOR "G".
  287.  
  288.  
  289. SUBROUTINE: IN.PUT LENGTH%, WAITTIME%, IFG%, IBG%
  290. PARAMETERS: LENGTH%   - Desired length of input. Accepts an INTEGER number
  291.                         or variable. 0 = any length.
  292.             WAITTIME% - Number of seconds to wait for input. If ENTER is not
  293.                         pressed before this times out, control is passed back
  294.                         to the calling routine and RESPONSE$ will contain "-1"
  295.             IFG%      - Foreground color of the caller's response (INTEGER).
  296.             IBG%      - Background color of the caller's response (INTEGER).
  297.  
  298. DESCRIPTION: Gets a response from the caller which is returned in the variable
  299.              RESPONSE$. Passes ASCII characters in the range 32 - 127 and
  300.              ignores all others. The 1st parameter indicates the desired
  301.              length of the input. Pass 0 to accept any length. This feature
  302.              allows you to use HOT KEYS! If you are prompting for a Y/N you
  303.              could do something like:
  304.                 DIS.PLAY "Is everything correct? (y/n) " (+ your parameters)
  305.                 IN.PUT 1, 180, 12, 0
  306.                 IF UCASE$(RESPONSE$) = "Y" THEN
  307.                  Etc., Etc.
  308.              As soon as the caller hit Y or N, the subroutine terminates
  309.              without his having to hit ENTER (however IN.PUT always returns
  310.              when ENTER is pressed). Accepts an INTEGER number or variable.
  311.  
  312.              The IN.PUT can also be used as a timed routine. In the example
  313.              above, The routine would wait for 180 seconds. if it does not
  314.              receive a keypress within that time, it returns to the calling
  315.              routine and RESPONSE$ would contain a "-1".
  316.              (See the enclosed EXINPUT.BAS for an example).
  317.  
  318.  
  319.  
  320. DOORFRAME v1.0 - Users Guide - Page 5
  321.  
  322. SUBROUTINE: INITIALIZE
  323. PARAMETERS: None
  324. DESCRIPTION: VERY IMPORTANT! You MUST make a call to INITIALIZE before your
  325.              code does anything. This subroutine opens the system files and
  326.              obtains all the information you will need to run your Door. It
  327.              first reads the configuration file you passed on the command
  328.              line, then it reads the BBS interface file PCBOARD.SYS, etc.
  329.              There are 3 variables that must be populated before the call
  330.              to INITIALIZE. 
  331.                 PROGNAME$ = "Name of your Door"
  332.                 EXENAME$ = "FILENAM"
  333.                 VERSION$ = " v0.0"
  334.                 INITIALIZE
  335.              PROGNAME$ and VERSION$ are displayed on the Status line after
  336.              the callers name. EXENAME$ must be populated if you plan to use
  337.              the high score bulletin generator. EXENAME$ is the filename of
  338.              your program minus the .EXE extension.
  339.          ->  NOTE: EXENAME$ MUST BE NO MORE THAN 7 CHARACTERS!
  340.  
  341.  
  342. SUBROUTINE: LINES SROW%,SCOL%,LEN%,DIR$,ENDS%,MID%,EFG%,EBG%,MFG%,MBG%
  343. PARAMETERS: SROW%    - Row the line starts at. Valid numbers are 1 - 22.
  344.                        Accepts an INTEGER number or variable.
  345.             SCOL%    - Column the line starts at. Valid numbers are 1 - 79.
  346.                        Accepts an INTEGER number or variable.
  347.             LEN%     - Length of the line. Max. of 23 for vertical, 80 horiz.
  348.                        Accepts an INTEGER number or variable.
  349.             DIR$     - "H" = horizontal. "V" = vertical. Accepts a STRING
  350.                        variable or quoted text.
  351.             ENDS%    - If you are placing the line inside a box, you can
  352.                        make the ends of the line match the box border.
  353.                        Accepts an INTEGER number or variable.
  354.                          0 = No ends. (straight line only)
  355.                          1 = Single line.
  356.                          2 = Double line.
  357.             MID%     - Type of line. 1 = Single line. 2 = Double line.
  358.                        Accepts an INTEGER number or variable.
  359.             EFG%     - Foreground color of the ends (see color table).
  360.                        Accepts an INTEGER number or variable.
  361.             EBG%     - Background color of the ends (see color table).
  362.                        Accepts an INTEGER number or variable.
  363.             MFG%     - Foreground color of the line (see color table).
  364.                        Accepts an INTEGER number or variable.
  365.             MBG%     - Background color of the line (see color table).
  366.                        Accepts an INTEGER number or variable.
  367. DESCRIPTION: Draws either a vertical or horizontal line at the specified
  368.              location. 
  369.  
  370.  
  371. SUBROUTINE: MAKE.BLT HI.SCORE#
  372. PARAMETERS: HI.SCORE#, 10, 10000, Etc.
  373. DESCRIPTION: This routine will write a hi-score bulletin listing the top ten
  374.              scores. The parameter passed must be double precision (#). This
  375.              routine creates a file called FILENAME.BUL (where FILENAME is
  376.              the same as specified in the EXENAME$ variable). The first line
  377.              of this .BUL file indicates the path to the actual BLT file. It
  378.              initially writes FILENAME.BLT. If you wish to have a different
  379.              filename (such as BLT1) you must edit this line. The filename
  380.              for your BLT file should be 7 characters or less because
  381.              DoorFrame also writes a graphics BLT and appends a G to the
  382.              filename. (You should also explain this to your user Sysops!)
  383.  
  384.  
  385. DOORFRAME v1.0 - Users Guide - Page 6
  386.  
  387.  
  388. SUBROUTINE: MAKE.BLT.CURRENT HI.SCORE#
  389. PARAMETERS: HI.SCORE#, 10, 10000, Etc.
  390. DESCRIPTION: Same as MAKE.BLT except it posts CURRENT scores rather than
  391.              highest scores.
  392.  
  393.  
  394. SUBROUTINE: MORE
  395. PARAMETERS: None
  396. DESCRIPTION: Outputs "Press <ENTER> to continue, or <E> to end" and waits
  397.              for a response. Check the variable RESPONSE$ for an "E" and
  398.              terminate the current routine if found. For example:
  399.                 MORE
  400.                 IF UCASE$(RESPONSE$) = "E" THEN
  401.                   Etc.. Etc.
  402.  
  403. SUBROUTINE: MUSIC TUNE$
  404. PARAMETERS: MUSIC CODES
  405. DESCRIPTION: Outputs music to the remote system. The TUNE$ parameter
  406.              contains the same codes you would normally use in the BASIC
  407.              PLAY statement. For example:
  408.               TUNE$ = "t110 l8 ms d4 mn o3 g a b o4 c ... "
  409.               MUSIC TUNE$
  410.              Since not all communications programs can handle music, you
  411.              should ask the user if he has music capabilities. If the
  412.              user can't handle music he will simply see the music codes
  413.              come across his screen (not a pretty sight!).
  414.  
  415.  
  416. SUBROUTINE: OUT.PUT LF%
  417. PARAMETERS: LF%, 1, 2, Etc.
  418. DESCRIPTION: Outputs the specified number of CR/LF. Parameter is an INTEGER
  419.              number or an INTEGER variable. Ex: OUT.PUT 2
  420.  
  421. SUBROUTINE: SEND FILENAME$, YN%
  422. PARAMETERS: FILENAME$ or "FILENAME".  YN%, 0, or 1 
  423.             FILENAME$ - STRING variable or quoted text of file to SEND.
  424.             YN%       - 0 = Do not use the ENTER prompt after last page.
  425.                         1 = Use the ENTER prompt after last page.
  426. DESCRIPTION: Sends the specified filename. This can be either an ASCII file
  427.              or an ANSI file. SEND first checks for the existance of the file
  428.              and either sends the file or reports "File not Found!". This is
  429.              handy for displaying Help files, Welcome screens, etc.
  430.  
  431.  
  432. SUBROUTINE: SHOW.BLT YN$
  433. PARAMETERS: YN$, "Y", "N"
  434. DESCRIPTION: Call this routine if your Door features a Hi-score bulletin. Make
  435.              sure you have called MAKE.BLT first! Best place to call this
  436.              is just before you call EXIT.DOOR. For example:
  437.                MAKE.BLT HI.SCORE#
  438.                SHOW.BLT "Y"
  439.                EXIT.DOOR "Y"
  440.              SHOW.BLT "Y" will ask if they want to see the Bulletin.
  441.              SHOW.BLT "N" displays the bulletin without asking.
  442.  
  443.  
  444. DOORFRAME v1.0 - Users Guide - Page 7
  445.  
  446.  
  447.                              C O L O R  T A B L E
  448.                             ======================
  449.  
  450. COLOR # - NAME       INTENSITY       FOREGROUND (FG%)     BACKGROUND (BG%)
  451. ---------------------------------------------------------------------
  452.  0 - BLACK              Low               X                   X
  453.  1 - BLUE                "                X                   X
  454.  2 - GREEN               "                X                   X
  455.  3 - CYAN                "                X                   X
  456.  4 - RED                 "                X                   X
  457.  5 - MAGENTA             "                X                   X
  458.  6 - YELLOW              "                X                   X
  459.  7 - WHITE               "                X                   X
  460.  8 - GRAY               High              X
  461.  9 - LBLUE               "                X
  462. 10 - LGREEN              "                X
  463. 11 - LCYAN               "                X
  464. 12 - LRED                "                X
  465. 13 - LMAGENTA            "                X
  466. 14 - LYELLOW             "                X
  467. 15 - LWHITE              "                X
  468.  
  469. The COLORs are defined as CONSTANT in the DFRAMEX.INC file so you may use
  470. either the actual color number, it's name or an INTEGER variable of your own
  471. choosing when CALLing the DIS.PLAY subroutine.
  472.  
  473. The first few lines of your Door should be:
  474.  
  475.    ' $INCLUDE: 'DFRAMEX.INC'
  476.    PROGNAME$ = "Name of the Door"
  477.    VERSION$ = " v1.0"
  478.    EXENAME$ = "FILENAM"           <- NOTE: Max of 7 letters!
  479.    TIMEOUT% = 240                 <- Numbers of seconds to wait for keyboard
  480.                                      activity. 240 will wait for 4 minutes
  481.                                      then send a Keyboard Timeout msg. and
  482.                                      exit back to the BBS. Defaults to 300.
  483.    OWNER$ = "Your Name"           <- For registered DoorFrame users only.
  484.    SERIAL$ = "99999"              <- DoorFrame will display an EVALUATION
  485.                                      COPY message until registered.
  486.    INITIALIZE
  487.    .
  488.    .
  489.    Your code.......
  490.    .
  491.    .
  492.    MAKE.BLT HI.SCORE#            <- If you want one generated.
  493.    SHOW.BLT "Y"                  <- If you want to show it before door closes.
  494.    EXIT.DOOR "Y"
  495.  
  496. The configuration filename passed on the command line is OPENed as #1. This
  497. file is left open so you may read additional lines from the .CFG file. 
  498. Although it is not absolutely necessary, you should CLOSE #1 somewhere near
  499. the start of your program.
  500.  
  501.  
  502. DOORFRAME v1.0 - Users Guide - Page 8
  503.  
  504.  
  505.                               CONFIGURATION FILE
  506.                               ==================
  507.  
  508. The format of the configuration file used by Doors created with DoorFrame is:
  509.  
  510. C:\PCB\PCBOARD.SYS              <- For PCBoard systems using PCBOARD.SYS only
  511. C|\PCB\USERS.SYS                <- For PCBoard systems using USERS.SYS
  512. C:\BBS\CALLINFO.BBS             <- For Wildcat! systems (prior to v3.0)
  513. C:\BBS\USERINFO.DAT             <- For Wildcat! 3.x+ systems.
  514. C:\BBS\DOOR.SYS                 <- For systems that support DOOR.SYS
  515. C:\BBS\DORINFOx.DEF             <- For QBBS/RBBS/RA. Replace x with Node #.
  516. C:\BBS\SFDOORS.DAT              <- For Spitfire systems.
  517. MicroNet                        <- BBS name
  518. Ted                             <- Sysop's first name
  519. Freeman                         <- Sysop's last name
  520.   .                             <- The Configuration file is left open as #1
  521.   .                                so you may add whatever is necessary.
  522.  
  523. NOTE: DoorFrame supports COM 1-4 on the standard IRQ's - COM1/COM3 = IRQ4 and
  524.       COM2/COM4 = IRQ3. If you wish to use a non-standard IRQ, add the IRQ
  525.       number after the configuration filename. Let's assume your Door is
  526.       called FOOBAR and you want to use COM1 and IRQ5. The command line
  527.       passed to your Door would be:
  528.         FOOBAR FOOBAR.CFG /5
  529.       The /5 tells DoorFrame to use IRQ5 rather than the standard IRQ4 that
  530.       is normally used with COM1. No /x parameter is needed for the standard
  531.       IRQ's.
  532.  
  533.  
  534.  
  535. DOORFRAME v1.0 - Users Guide - Page 9
  536.  
  537.  
  538.                   VARIABLES AVAILABLE WHEN USING PCBOARD.SYS
  539.                   ==========================================
  540.  
  541.         ALLOWEDBYTES#             Allowed D/L bytes from the PWRD file.
  542.                                   This number has already been multipled
  543.                                   by 1024 so it will be in actual bytes
  544.                                   rather than Kilobytes allowed.
  545.       * BAUDCONN$                 Connect rate of caller or "LOCAL"
  546.       * BAUDOPEN$                 Port opening BPS
  547.       * BBSSYS$                   Name of the BBS
  548.         CALLALARM%                Caller alarm status.     -1=ON, 0=OFF
  549.       * CALLERSLOC$               Location of CALLERSx log
  550.         CHATSTATUS$               Chat mode status. "U" or "A"
  551.       * CITY$                     Callers city and state
  552.       * CNAMESLOC$                Location of CNAMES
  553.       * COMPORT%                  COM port number
  554.         CONFREG$                  Conferences registered in
  555.         DISPLAY%                  Local display status.    -1=ON, 0=OFF
  556.         DOWNLOADS%                Number of downloads made
  557.       * ECC%                      Error corrected connect.  1=YES, 0=NO
  558.         EXENAME$                  Name of .EXE (Programmer supplied)
  559.         EXPERT$                   Expert mode - "Y" or "N"
  560.         EXPIRE$                   Callers expiration date
  561.       * FIRST$                    Callers first name
  562.         GRAPHICS%                 Graphics mode status.    -1=ON, 0=OFF
  563.                                   Determines if the caller is ANSI compatible
  564.                                   If your door requires the use of cursor
  565.                                   positioning and GRAPHICS% = 0 then you
  566.                                   should kick him back out of the door.
  567.       * HPHONE$                   Callers home phone number
  568.       * LASTON$                   Date caller last logged on (MM-DD-YY)
  569.         LEVEL&                    Callers security level
  570.       * LOCALUSR%                 -1 = LOCAL mode, 0 = Online
  571.       * LOGONHRS$                 Time caller logged on in HH:MM format
  572.       * LOGONMINS%                Time caller logged on in minutes
  573.         MODE%                     0 = Non-color, -1 = color is on. Default
  574.                                   is the BBS setting. You may force color
  575.                                   by setting this to -1.
  576.       * NAME$                     Callers full name
  577.       * NETWORK%                  1 = BBS is networked, 0 = no network
  578.       * NODENUM%                  Node number
  579.         OWNER$                    Name DoorFrame is registered to (if any).
  580.         PASSWORD$                 Password of caller
  581.         PAGEBELL%                 Page bell status.        -1=ON, 0=OFF
  582.         PAGELEN%                  Callers page length
  583.       * PCBDAT$                   Location of PCBOARD.DAT
  584.       * PCBOARD%                  1 = PCBoard, 0 = non-PCBoard
  585.         PRINTER%                  Printer status.          -1=ON, 0=OFF
  586.         PROGNAME$                 Name of DOOR (Programmer supplied)
  587.         PROTOCOL$                 Caller's default protocol (Z, X, etc.)
  588.         RESPONSE$                 Returned after a CALL to IN.PUT
  589.         SERIAL$                   Your DoorFrame serial #. String variable.
  590.       * SYSLOC$                   Location of system file. This contains the
  591.                                   path/filename of line 1 in the .CFG file.
  592.       * SYSOP%                    1 = SYSOP is using DOOR, 0 otherwise
  593.       * SYSOPFIRST$               Sysops first name
  594.         SYSOPFLAG$                " ", "N"=Sysop Next, "X"=Exit to DOS
  595.       * SYSOPLAST$                Sysops last name
  596.       * SYSOPNAME$                Sysops first and last names
  597.  
  598.  
  599. DOORFRAME v1.0 - Users Guide - Page 10
  600.  
  601.  
  602.         TIMEADJUST%               Use to adjust the callers remaining time
  603.                                   online. This variable adjusts the ELAPSED
  604.                                   time so if you wish to decrease his time,
  605.                                   give this a positive value.
  606.       * TIMEALWD%                 Minutes caller is allowed
  607.       * TIMELEFT%                 Time caller has left in minutes. Doorframe
  608.                                   calculates this so changing it has no effect
  609.       * TIMENOW%                  Current time in minutes (0 - 1440)
  610.       * TIMESON%                  Number of times on system
  611.         TIMEOUT%                  Programmer supplied. Defaults to 5 mins if
  612.                                   not specified. Has a minimum of one min.
  613.                                   No limit on maximum. 
  614.       * TIMEUSED%                 Time used so far today in minutes
  615.         UPLOADS%                  Number of uploads made
  616.       * USERCOMMENT$              User maintained comment
  617.       * USERSLOC$                 Location of USERS file
  618.       * USERNUM%                  Record number of caller
  619.         VERSION$                  DOOR version # (Programmer supplied)
  620.       * WPHONE$                   Callers work phone number
  621.  
  622. NOTES: Variables marked with '*' are provided for information only.
  623.  
  624.  
  625. DOORFRAME v1.0 - Users Guide - Page 11
  626.  
  627.  
  628.                    VARIABLES AVAILABLE WHEN USING USERS.SYS
  629.                    ========================================
  630.  
  631.         When using USERS.SYS, all variables contained in PCBOARD.SYS may
  632.         be used plus the following additional variables.
  633.  
  634.         DAILYDNLDBYTES&          Bytes downloaded so far today.
  635.         DELETEFLAG%              1 = delete this record, 0 = keep
  636.         EXPIREDLEVEL&            Expired Security level
  637.         LASTCONF%                Conference number last in.
  638.         LASTTIMEON$              Last time caller was on
  639.         MSGS.LEFT%               Number of messages posted
  640.         MSGS.READ%               Number of messages read
  641.         PCB.VERSION%             PCBoard version number (i.e. 1450)
  642.         TOTDNLDBYTES&            Total number of BYTES downloaded
  643.         TOTUPLDBYTES&            Total number of BYTES uploaded
  644.  
  645. NOTES: These variables are all passed back to PCBoard.
  646.  
  647.  
  648. DOORFRAME v1.0 - Users Guide - Page 12
  649.  
  650.  
  651.                     VARIABLES AVAILABLE WHEN USING DOOR.SYS
  652.                     =======================================
  653.  
  654.         ALIAS$                    Callers alias/handle
  655.       * ANSISUPPORT$              Caller supports ANSI but in NG mode
  656.       * BAUDCONN$                 Connect rate of caller or "LOCAL"
  657.       * BAUDOPEN$                 Port opening BPS
  658.       * BBSCOLOR%                 BBS default color code (1-15)
  659.       * BBSSYS$                   Name of the BBS
  660.         BIRTHDATE$                Callers date of birth
  661.         CALLALARM%                Caller alarm status.     -1=ON, 0=OFF
  662.       * CITY$                     Callers city and state
  663.       * COMPORT%                  COM port number (1 - 4).
  664.         CONFREG$                  Conferences registered in
  665.         DAILY.BYTES.ALWD#         Daily download max. K limit
  666.         DISPLAY%                  Local display status.    -1=ON, 0=OFF
  667.         DOORS.OPENED%             Number of Doors caller has opened
  668.         DOWNLOADS%                Number of downloads made
  669.       * ECC%                      Error corrected connect.  1=YES, 0=NO
  670.         EXENAME$                  Name of .EXE (Programmer supplied)
  671.         EXFROM%                   Conference exited to Door from.
  672.         EXPERT$                   Expert mode - "Y" or "N"
  673.         EXPIRE$                   Callers expiration date
  674.       * EVENT$                    Event time (hh:mm)
  675.         GRAPHICS%                 Graphics mode status.    -1=ON, 0=OFF
  676.                                   Determines if the caller is ANSI compatible
  677.                                   If your door requires the use of cursor
  678.                                   positioning and GRAPHICS% = 0 then you
  679.                                   should kick him back out of the door.
  680.       * HPHONE$                   Callers home phone number
  681.       * LASTON$                   Date caller last logged on (MM-DD-YY)
  682.         LASTSCAN$                 Date of last directory/new files scan.
  683.         LEVEL&                    Callers security level
  684.       * LOCALUSR%                 -1 = LOCAL mode, 0 = Online
  685.       * LOGONHRS$                 Time caller logged on in HH:MM format
  686.       * LOGONMINS%                Time caller logged on in minutes
  687.         MAX.FILES%                Maximum daily files available
  688.         MINSCREDIT%               Time credits in minutes
  689.         MODE%                     0 = Non-color, -1 = color is on. Default
  690.                                   is the BBS setting. You may force color
  691.                                   by setting this to -1.
  692.         MSGS.LEFT%                Total messages left
  693.       * NAME$                     Callers full name
  694.       * NETWORK%                  1 = BBS is networked, 0 = no network
  695.       * NODENUM%                  Node number
  696.         NUM.DL.TODAY%             Files downloaded so far today
  697.         OWNER$                    Name DoorFrame is registered to (if any).
  698.         PAGEBELL%                 Page bell status.        -1=ON, 0=OFF
  699.         PAGELEN%                  Callers page length
  700.       * PARITY%                   Parity (word length?) (7 or 8)
  701.         PASSWORD$                 Password of caller
  702.       * PATHGEN$                  Path to the GEN directory
  703.       * PATHMAIN$                 Path to the MAIN directory
  704.         PRINTER%                  Printer status.          -1=ON, 0=OFF
  705.         PROGNAME$                 Name of DOOR (Programmer supplied)
  706.         PROTOCOL$                 Callers default protocol (Z, X, etc)
  707.         RESPONSE$                 Returned after a CALL to IN.PUT
  708.  
  709.  
  710. DOORFRAME v1.0 - Users Guide - Page 13
  711.  
  712.  
  713.         SECREM$                   Number of seconds remaining this call.
  714.         SERIAL$                   Your DoorFrame serial #. String variable.
  715.       * SYSLOC$                   Location of system file. This contains the
  716.                                   path/filename of line 1 in the .CFG file.
  717.       * SYSOP%                    1 = SYSOP is using DOOR, 0 otherwise
  718.       * SYSOPFIRST$               Sysops first name
  719.       * SYSOPLAST$                Sysops last name
  720.       * SYSOPNAME$                Sysops first and last names
  721.         TIMEADJUST%               Use to adjust the callers remaining time
  722.                                   online. This variable adjusts the ELAPSED
  723.                                   time so if you wish to decrease his time,
  724.                                   give this a positive value.
  725.       * TIMELASTCALL$             Time of last call (hh:mm)
  726.       * TIMELEFT%                 Time caller has left in minutes. Doorframe
  727.                                   calculates this so changing it has no effect
  728.       * TIMENOW%                  Current time in minutes (0 - 1440)
  729.         TIMEOUT%                  Programmer supplied. Defaults to 5 mins if
  730.                                   not specified. Has a minimum of one min.
  731.                                   No limit on maximum. 
  732.       * TIMESON%                  Number of times on system
  733.       * TIMEUSED%                 Time used so far today in minutes
  734.         TOTAL.BYTES.TODAY#        Daily download K total
  735.         TOTAL.KB.DL#              Total K bytes downloaded
  736.         TOTAL.KB.UL#              Total K bytes uploaded
  737.         UPLOADS%                  Number of uploads made
  738.       * USERCOMMENT$              User maintained comment
  739.       * USERNUM%                  Record number of caller
  740.         VERSION$                  DOOR version # (Programmer supplied)
  741.       * WPHONE$                   Callers work phone number
  742.  
  743. NOTES: Variables marked with '*' are provided for information only.
  744.  
  745.  
  746. DOORFRAME v1.0 - Users Guide - Page 14
  747.  
  748.  
  749.                   VARIABLES AVAILABLE WHEN USING USERINFO.DAT
  750.                   ===========================================
  751.  
  752.       * ACTIVE.MENU%              0=Main, 1=Msg, 2=File, 3=Sysop
  753.         ALIAS$                    Callers alias/handle
  754.       * ANSISUPPORT$              'Y' or 'N' for ANSI enabled.
  755.         BANKED.TIME%              Banked time. (DLT - MaxLogOn)
  756.       * BAUDCONN$                 Connect rate of caller or "LOCAL"
  757.       * COMMAND.LINE$             Started with a CommandLine switch. Y or N.
  758.       * DATABITS$                 Databits, 7 or 8.
  759.       * DOOR.LOGOFF$              Y or N. Set to Y if caller logged off from
  760.                                   inside the door.
  761.         DOOR.DL&                  Number of files DL'ed in the door.
  762.         DOOR.KB&                  Downloads in K, add to daily and total bytes
  763.       * ECC%                      Error corrected connect.  1=YES, 0=NO
  764.       * LOGONTIMEDATE$            Time and date caller logged on to BBS
  765.       * NAME$                     Callers full name
  766.         SEC.LEVEL.NAME$           Security level name.
  767. NOTES: Variables marked with '*' are provided for information only.
  768.        All other variables are taken from the DOOR.SYS file.
  769.  
  770.  
  771.                   VARIABLES AVAILABLE WHEN USING DORINFOx.DEF
  772.                   ===========================================
  773.  
  774.       * BAUDRATE$                 Baud rate and parity of caller.
  775.                                   Ex. 2400 BAUD,N,8,1
  776.                                   NOTE: RBBS adds baud rate of BBS.
  777.       * BBSSYS$                   Name of the BBS
  778.       * CITY$                     Callers city and state
  779.       * COMPORT%                  COM port number (1 - 4).
  780.         DISPLAY%                  Defaults to -1 (ON).
  781.       * DORINFO13TH$              13th line available only on RBBS systems.
  782.         EXENAME$                  Name of .EXE (Programmer supplied)
  783.       * FIRST$                    Callers first name
  784.         GRAPHICS%                 Graphics mode status.    -1=ON, 0=OFF
  785.                                   Determines if the caller is ANSI compatible
  786.                                   If your door requires the use of cursor
  787.                                   positioning and GRAPHICS% = 0 then you
  788.                                   should kick him back out of the door.
  789.                                   Use DETECT.ANSI to determine this.
  790.       * LAST$                     Callers last name
  791.       * LASTON$                   Default 01-01-80 (not provided in DORINFO)
  792.         LEVEL&                    Callers security level
  793.       * LOCALUSR%                 -1 = LOCAL mode, 0 = Online
  794.         MODE%                     0 = Non-color, -1 = color is on. Default
  795.                                   is the BBS setting. You may force color
  796.                                   by setting this to -1.
  797.       * NAME$                     Callers full name
  798.         NETWORK$                  Network type. DoorFrame reads/writes as is.
  799.       * NODENUM%                  Number of this Node.
  800.         OWNER$                    Name DoorFrame is registered to (if any).
  801.         PROGNAME$                 Name of DOOR (Programmer supplied)
  802.         RESPONSE$                 Returned after a CALL to IN.PUT
  803.         SERIAL$                   Your DoorFrame serial #. String variable.
  804.       * SYSLOC$                   Location of system file. This contains the
  805.                                   path/filename of line 1 in the .CFG file.
  806.       * SYSOP%                    1 = SYSOP is using DOOR, 0 otherwise
  807.       * SYSOPFIRST$               Sysops first name
  808.       * SYSOPLAST$                Sysops last name
  809.       * SYSOPNAME$                Sysops first and last names
  810.  
  811.  
  812. DOORFRAME v1.0 - Users Guide - Page 15
  813.  
  814.         TIMEADJUST%               Use to adjust the callers remaining time
  815.                                   online. This variable adjusts the ELAPSED
  816.                                   time so if you wish to decrease his time,
  817.                                   give this a positive value.
  818.       * TIMELEFT%                 Time caller has left in minutes. Doorframe
  819.                                   calculates this so changing it has no effect
  820.       * TIMENOW%                  Current time in minutes (0 - 1440)
  821.         TIMEOUT%                  Programmer supplied. Defaults to 5 mins if
  822.                                   not specified. Has a minimum of one min.
  823.                                   No limit on maximum. 
  824.       * TIMESON%                  Defaults to 1 (Not provided in DORINFO)
  825.       * TIMEUSED%                 Time used so far today in minutes
  826.  
  827. NOTES: Variables marked with '*' are provided for information only.
  828.  
  829.  
  830.  
  831.                   VARIABLES AVAILABLE WHEN USING CALLINFO.BBS
  832.                   ===========================================
  833.  
  834.       * ALREADYCONNECTED$         "TRUE" or "FALSE"
  835.       * BAUDCONN$                 Connect rate of caller or "LOCAL"
  836.       * BBSSYS$                   Name of the BBS
  837.       * CITY$                     Callers city and state
  838.       * COMPORT%                  COM port number (1 - 4).
  839.         CONFREG$                  Conferences registered in (ABCD etc.)
  840.       * CONSOLE$                  "LOCAL" or "REMOTE"
  841.         DAILY.BYTES.ALWD#         Daily download max. K limit
  842.       * DATABITS$                 7 or 8
  843.         DISPLAY%                  Local display status.    -1=ON, 0=OFF
  844.       * DOORNUMBER$               BBS number of this door?
  845.         EXENAME$                  Name of .EXE (Programmer supplied)
  846.       * ENTERDOOR$                Time caller entered door in HH:MM format.
  847.       * FIRST$                    Callers first name
  848.         GRAPHICS%                 Graphics mode status.    -1=ON, 0=OFF
  849.                                   Determines if the caller is ANSI compatible
  850.                                   If your door requires the use of cursor
  851.                                   positioning and GRAPHICS% = 0 then you
  852.                                   should kick him back out of the door.
  853.                                   Use DETECT.ANSI to determine this.
  854.       * LAST$                     Callers last name
  855.         LASTMSG$                  Last message read
  856.       * LASTONDATE$               Date and time of last call
  857.         LEVEL&                    Callers security level
  858.       * LOCALUSR%                 -1 = LOCAL mode, 0 = Online
  859.       * LOGONTIMEDATE$            Time and date caller logged on to BBS
  860.       * LOGONHRS$                 Time caller logged on in HH:MM format
  861.         MODE%                     0 = Non-color, -1 = color is on. Default
  862.                                   is the BBS setting. You may force color
  863.                                   by setting this to -1.
  864.       * MNP$                      "MNP/ARQ Connection" or "Normal Connection"
  865.       * NAME$                     Callers full name
  866.         NUM.DL.TODAY%             Files downloaded so far today
  867.  
  868.  
  869. DOORFRAME v1.0 - Users Guide - Page 16
  870.  
  871.         OWNER$                    Name DoorFrame is registered to (if any).
  872.         PASSWORD$                 Password of caller
  873.         PROGNAME$                 Name of DOOR (Programmer supplied)
  874.         RESPONSE$                 Returned after a CALL to IN.PUT
  875.         SERIAL$                   Your DoorFrame serial #. String variable.
  876.       * SYSLOC$                   Location of system file. This contains the
  877.                                   path/filename of line 1 in the .CFG file.
  878.       * SYSOP%                    1 = SYSOP is using DOOR, 0 otherwise
  879.       * SYSOPFIRST$               Sysops first name
  880.       * SYSOPLAST$                Sysops last name
  881.       * SYSOPNAME$                Sysops first and last names
  882.         TIMEADJUST%               Use to adjust the callers remaining time
  883.                                   online. This variable adjusts the ELAPSED
  884.                                   time so if you wish to decrease his time,
  885.                                   give this a positive value.
  886.       * TIMELEFT%                 Time caller has left in minutes. Doorframe
  887.                                   calculates this so changing it has no effect
  888.       * TIMENOW%                  Current time in minutes (0 - 1440)
  889.       * TIMEOFF$                  Time caller exited from the door.
  890.         TIMEOUT%                  Programmer supplied. Defaults to 5 mins if
  891.                                   not specified. Has a minimum of one min.
  892.                                   No limit on maximum. 
  893.       * TIMEUSED%                 Time used so far today in minutes
  894.       * USERNUM%                  Record number of caller
  895.  
  896. NOTES: Variables marked with '*' are provided for information only.
  897.  
  898.  
  899. DOORFRAME v1.0 - Users Guide - Page 17
  900.  
  901.  
  902.                   VARIABLES AVAILABLE WHEN USING SFDOORS.DAT
  903.                   ==========================================
  904.  
  905.         ANSION$                   "TRUE" or "FALSE"
  906.       * BAUDCONN$                 Connect rate of caller or "LOCAL"
  907.       * BBSDIR$                   Spitfire's home directory
  908.       * BBSSYS$                   Name of the BBS
  909.       * CITY$                     Callers city and state
  910.       * COMPORT%                  COM port number (1 - 4).
  911.         DAILY.BYTES.ALLOWED#      Maximum download BYTES per day
  912.         DISPLAY%                  Local display status.    -1=ON, 0=OFF
  913.         DLPERDAY%                 Number of downloads allowed per day
  914.         DLTODAY%                  Number of downloads made today
  915.         DOWNLOADS%                Number of downloads made
  916.       * ECC%                      Error corrected connect.  1=YES, 0=NO
  917.         EXENAME$                  Name of .EXE (Programmer supplied)
  918.         EXTRATIME&                Number of seconds gained since logon
  919.       * FIRST$                    Callers first name
  920.       * FRONTEND$                 "TRUE" or "FALSE" if booted from a
  921.                                   front end program.
  922.         GRAPHICS%                 Graphics mode status.    -1=ON, 0=OFF
  923.                                   Determines if the caller is ANSI compatible
  924.                                   If your door requires the use of cursor
  925.                                   positioning and GRAPHICS% = 0 then you
  926.                                   should kick him back out of the door.
  927.                                   Use DETECT.ANSI to determine this.
  928.       * HPHONE$                   Callers home phone number
  929.       * LAST$                     Callers last name
  930.         LASTMCONF$                Last message conference
  931.         LASTFAREA$                Last file area
  932.         LEVEL&                    Callers security level
  933.       * LOCALUSR%                 -1 = LOCAL mode, 0 = Online
  934.       * LOGONHRS$                 Time caller logged on in HH:MM format
  935.       * LOGONSECS&                Number of seconds since midnight
  936.                                   when caller logged on to the BBS.
  937.       * MAXBAUD$                  Maximum baud of the system
  938.         MODE%                     0 = Non-color, -1 = color is on. Default
  939.                                   is the BBS setting. You may force color
  940.                                   by setting this to -1.
  941.       * NAME$                     Callers full name
  942.       * NODENUM%                  Number of this Node.
  943.       * NODTELOCK$                "TRUE" or "FALSE" if configured for
  944.                                   software data flow control.
  945.         OWNER$                    Name DoorFrame is registered to (if any).
  946.         PASSWORD$                 Password of caller
  947.         PROGNAME$                 Name of DOOR (Programmer supplied)
  948.         RESPONSE$                 Returned after a CALL to IN.PUT
  949.       * SECONDS&                  Number of seconds since midnight
  950.                                   when caller entered the door.
  951.         SERIAL$                   Your DoorFrame serial #. String variable.
  952.       * SYSLOC$                   Location of system file. This contains the
  953.                                   path/filename of line 1 in the .CFG file.
  954.       * SYSOP%                    1 = SYSOP is using DOOR, 0 otherwise
  955.       * SYSOPFIRST$               Sysops first name
  956.       * SYSOPLAST$                Sysops last name
  957.       * SYSOPNAME$                Sysops first and last names
  958.         SYSOPNEXT$                "TRUE" or "FALSE"
  959.  
  960. NOTES: Variables marked with '*' are provided for information only.
  961.  
  962.  
  963. DOORFRAME v1.0 - Users Guide - Page 18
  964.  
  965.  
  966.         TIMEADJUST%               Use to adjust the callers remaining time
  967.                                   online. This variable adjusts the ELAPSED
  968.                                   time so if you wish to decrease his time,
  969.                                   give this a positive value.
  970.       * TIMEALWD%                 Minutes caller is allowed
  971.       * TIMELEFT%                 Time caller has left in minutes. Doorframe
  972.                                   calculates this so changing it has no effect
  973.       * TIMENOW%                  Current time in minutes (0 - 1440)
  974.         TIMEOUT%                  Programmer supplied. Defaults to 5 mins if
  975.                                   not specified. Has a minimum of one min.
  976.                                   No limit on maximum. 
  977.       * TIMEUSED%                 Time used so far today in minutes
  978.  
  979.         TOTAL.BYTES.TODAY#        BYTES downloaded so far today
  980.         TOTAL.KB.DL#              Total K bytes downloaded
  981.         TOTAL.KB.UL#              Total K bytes uploaded
  982.         UPLOADS%                  Number of uploads made
  983.       * USERNUM%                  Record number of caller
  984.  
  985. NOTES: Variables marked with '*' are provided for information only.
  986.  
  987.  
  988. DOORFRAME v1.0 - Users Guide - Page 19
  989.  
  990.  
  991.                    VARIABLES AVAILABLE WHEN USING CHAIN.TXT
  992.                    ========================================
  993.  
  994.         AGE$                      Caller's age
  995.         ALIAS$                    Callers alias/handle
  996.       * BBSSYS$                   Name of the BBS
  997.       * CALLSIGN$                 HAM radio call sign
  998.         COLUMNS$                  Caller's screen width
  999.       * COMPORT%                  COM port number (1 - 4).
  1000.         COSYSOP%                  1 if Caller is co-Sysop, 0 if not
  1001.       * DATADIR$                  System DATA directory
  1002.         DISPLAY%                  Local display status.    -1=ON, 0=OFF
  1003.         DOWNLOADS%                Number of downloads made
  1004.         EXENAME$                  Name of .EXE (Programmer supplied)
  1005.       * FIRST$                    Callers first name
  1006.       * GFILESDIR$                System GFILES directory
  1007.         GOLD$                     Caller's gold (?)
  1008.         GRAPHICS%                 Graphics mode status.    -1=ON, 0=OFF
  1009.                                   Determines if the caller is ANSI compatible
  1010.                                   Use DETECT.ANSI to determine this.
  1011.       * LAST$                     Callers last name
  1012.       * LASTON$                   Date caller last logged on (MM/DD/YY)
  1013.         LEVEL&                    Callers security level
  1014.       * LOCALUSR%                 -1 = LOCAL mode, 0 = Online
  1015.       * LOG$                      System LOG of the day
  1016.       * LOGONSECS&                Number of seconds since midnight
  1017.                                   when caller logged on to the BBS.
  1018.         MODE%                     0 = Non-color, -1 = color is on. Line 14
  1019.                                   of CHAIN.TXT determines this setting.
  1020.       * NAME$                     Callers full name
  1021.       * NODENUM%                  Defaults to 1 (not provided in CHAIN.TXT)
  1022.         OWNER$                    Name DoorFrame is registered to (if any).
  1023.         PAGELEN%                  Callers page length
  1024.         PARITY$                   "8N1" etc.
  1025.         PROGNAME$                 Name of DOOR (Programmer supplied)
  1026.         RESPONSE$                 Returned after a CALL to IN.PUT
  1027.         SERIAL$                   Your DoorFrame serial #. String variable.
  1028.         SEX$                      Callers sex
  1029.       * SYSLOC$                   Location of system file. This contains the
  1030.                                   path/filename of line 1 in the .CFG file.
  1031.       * SYSOP%                    1 = SYSOP is using DOOR, 0 otherwise
  1032.       * SYSOPFIRST$               Sysops first name
  1033.       * SYSOPLAST$                Sysops last name
  1034.       * SYSOPNAME$                Sysops first and last names
  1035.         TIMEADJUST%               Use to adjust the callers remaining time
  1036.                                   online. This variable adjusts the ELAPSED
  1037.                                   time so if you wish to decrease his time,
  1038.                                   give this a positive value.
  1039.       * TIMELEFT%                 Time caller has left in minutes. Doorframe
  1040.                                   calculates this so changing it has no effect
  1041.       * TIMENOW%                  Current time in minutes (0 - 1440)
  1042.         TIMEOUT%                  Programmer supplied. Defaults to 5 mins if
  1043.                                   not specified. Minimum 1 min. 
  1044.       * TIMEUSED%                 Time used so far today in minutes
  1045.         TOTAL.KB.DL#              Total K bytes downloaded
  1046.         TOTAL.KB.UL#              Total K bytes uploaded
  1047.         UPLOADS%                  Number of uploads made
  1048.       * USERNUM%                  Record number of caller
  1049.  
  1050. NOTES: Variables marked with '*' are provided for information only.
  1051.  
  1052.  
  1053. DOORFRAME v1.0 - Users Guide - Page 20
  1054.  
  1055.  
  1056.                                 MISCELLANEOUS NOTES
  1057.                                 ===================
  1058.  
  1059. DoorFrame requires DOS 3.x and up since all files are opened in SHARED mode.
  1060.  
  1061. When using PCBOARD.SYS, DoorFrame requires that PCBOARD.DAT be in the same
  1062. directory as PCBOARD.SYS. DoorFrame also accesses the USERS file.
  1063.  
  1064. When using USERS.SYS, DoorFrame also accesses PCBOARD.SYS, PCBOARD.DAT and the 
  1065. USERS file.
  1066.  
  1067. The DOOR.SYS used by DoorFrame is the standard 52 line GAP (tm) file.
  1068.  
  1069. The CALLINFO.BBS used by DoorFrame currently contains 36 lines.
  1070.  
  1071. Trapping errors
  1072. ---------------
  1073.  If you wish to utilize the internal error trapping, insert the following
  1074.  line wherever you wish the trapping to begin. I would suggest putting it
  1075.  right after you call INITIALIZE.
  1076.  
  1077.    ON ERROR GOTO ERR.ROUTINE
  1078.  
  1079.  Then at the very end of your program insert the following:
  1080.  
  1081.    ERR.ROUTINE:
  1082.    ERRORS ERR, ERL
  1083.    END
  1084.  
  1085.  If ANY Basic error is encountered, it will branch to ERR.ROUTINE and call
  1086.  the ERRORS subroutine. The error will be printed to the screen and written
  1087.  to DFRAME.ERR. Your Door will then exit back to the BBS.
  1088.  
  1089.  
  1090.